package com.eqxiu.ieditor.dao;

import com.eqxiu.ieditor.dto.HomePageUserDTO;
import com.eqxiu.ieditor.dto.HomePageUserParam;
import com.eqxiu.ieditor.entity.HomePageUser;
import com.eqxiu.ieditor.entity.HomePageUserCriteria;
import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

public interface HomePageUserMapper {
    int countByExample(HomePageUserCriteria example);

    int deleteByExample(HomePageUserCriteria example);

    int deleteByPrimaryKey(String userId);

    int insert(HomePageUser record);

    int insertSelective(HomePageUser record);

    List<HomePageUser> selectByExample(HomePageUserCriteria example);

    HomePageUser selectByPrimaryKey(String userId);

    int updateByExampleSelective(@Param("record") HomePageUser record, @Param("example") HomePageUserCriteria example);

    int updateByExample(@Param("record") HomePageUser record, @Param("example") HomePageUserCriteria example);

    int updateByPrimaryKeySelective(HomePageUser record);

    int updateByPrimaryKey(HomePageUser record);

    /**
     *
     * @Description 根据条件分页查询微主页用户信息（管理后台用）
     * @Author SuiXiangyu
     * @Date 2019/4/4
     * @Param [paramMap]
     * @return java.util.List<java.util.Map<java.lang.String,java.lang.Object>>
     **/
    List<Map<String, Object>> selectHomePageUserByParams(@Param("record") Map<String, Object> paramMap);

    /**
     *
     * @Description 根据条件分页查询微主页用户总数（管理后台用）
     * @Author SuiXiangyu
     **/
    int selectHomePageUserCountByParams( @Param("record") Map<String, Object> paramMap);


    /**
     * 管理后台接口--------------------------------------新
     */

    /**
     * 根据条件查询微主页的信息
     * @param param
     * @return
     */
    List<HomePageUserDTO> queryHomePageUserByParams(@Param("record") HomePageUserParam param);

    /**
     * 根据条件查询微主页的信息
     * @param userIds
     * @return
     */
    List<HomePageUserDTO> queryCountByUserIds(@Param("userIds") List<String> userIds);

    /**
     * 根据条件查询微主页的信息
     * @param userIds
     * @return
     */
    List<HomePageUserDTO> queryHomePageByUserIds(@Param("userIds") List<String> userIds);

    /**
     *查询微主页的数量
     **/
    int queryCountHomePage( @Param("record") HomePageUserParam param);


}